Lab Templates/Lab Template - WAF for GCP Coffeeshop/sql-injection-demo/lib/connectdb.php (23 lines of code) (raw):
<?php
function connectdb($database = "inject_demodb")
{
if ($database == '') {
$database = NULL;
}
if (isset($_ENV['DATABASE_URL'])) {
// http://username:password@hostname:9090/path
$db_props = parse_url($_ENV['DATABASE_URL']);
$host = $db_props['host'];
$port = $db_props['port'];
$username = $db_props['user'];
$password = $db_props['pass'];
//$database = substr($db_props['path'], 1); // remove the slash from '/path'
} else {
//$host = isset($_ENV['SQL_INJECTION_DB_HOST']) ? $_ENV['SQL_INJECTION_DB_HOST'] : 'localhost';
$port = isset($_ENV['SQL_INJECTION_DB_PORT']) ? $_ENV['SQL_INJECTION_DB_PORT'] : 3306;
$username = isset($_ENV['SQL_INJECTION_DB_USERNAME']) ? $_ENV['SQL_INJECTION_DB_USERNAME'] : 'sql_injection';
$password = isset($_ENV['SQL_INJECTION_DB_PASSWORD']) ? $_ENV['SQL_INJECTION_DB_PASSWORD'] : 'foobar';
}
$db = mysqli_connect(null, $username, $password, $database, null,"/cloudsql/sampleappgcp:us-west2:coffeeshop");
if (!$db) {
echo ("Connection failed: " . mysqli_connect_error());
}
return $db;
}